/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.





Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/

 

#ifndef StsModel_h
#define StsModel_h

@interface AssumedRoleService :NSObject

/// 代入角色id
@property (strong,nonatomic,nonnull)  NSString*  assumedServiceRoleId;

/// 代入角色名
@property (strong,nonatomic,nonnull)  NSString*  assumedServiceRoleName;


-(id) initWithAssumedServiceRoleId:(NSString*) assumedServiceRoleId
    assumedServiceRoleName:(NSString*)assumedServiceRoleName;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface AssumeRoleInfo :NSObject

/// 角色资源标识(jrn)
@property (strong,nonatomic,nonnull)  NSString*  roleJrn;

/// 角色会话名称
@property (strong,nonatomic,nonnull)  NSString*  roleSessionName;

/// 临时凭证有效期，单位秒，取值范围：3600~您所扮演的角色设置的maxSessionDuration，默认3600
@property (strong,nonatomic,nonnull)  NSNumber*  durationSeconds;


-(id) initWithRoleJrn:(NSString*) roleJrn
    roleSessionName:(NSString*)roleSessionName
    durationSeconds:(NSNumber*)durationSeconds;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface Credentials :NSObject

/// 临时accessKey
@property (strong,nonatomic,nonnull)  NSString*  accessKey;

/// 临时secretKey
@property (strong,nonatomic,nonnull)  NSString*  secretKey;

/// 临时安全令牌
@property (strong,nonatomic,nonnull)  NSString*  sessionToken;

/// 有效期
@property (strong,nonatomic,nonnull)  NSString*  expiration;


-(id) initWithAccessKey:(NSString*) accessKey
    secretKey:(NSString*)secretKey
    sessionToken:(NSString*)sessionToken
    expiration:(NSString*)expiration;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface AssumedRoleUser :NSObject

/// 代入角色id
@property (strong,nonatomic,nonnull)  NSString*  assumedRoleId;

/// 京东云资源标识(jrn)
@property (strong,nonatomic,nonnull)  NSString*  jrn;


-(id) initWithAssumedRoleId:(NSString*) assumedRoleId
    jrn:(NSString*)jrn;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface AssumeServiceRoleInfo :NSObject

/// 角色类型, 1-服务相关角色，2-服务角色
@property (strong,nonatomic,nonnull)  NSNumber*  roleType;

/// 令牌有效期，单位秒，默认3600
@property (strong,nonatomic,nonnull)  NSNumber*  durationSeconds;


-(id) initWithRoleType:(NSNumber*) roleType
    durationSeconds:(NSNumber*)durationSeconds;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end

#endif /* StsModel_h */
